La Ciudad de Buenos Aires es la ciudad capital de la Republica Argentina, es una ciudad autónoma con independencia politica del Gobierno Federal. Es el territorio económicamente mas rico del país, pero con tasas de desigualdad económica y social crecientes.
En la ciudad hay barrios populares con características particulares que pueden asimilarse a las conocida favelas y territorios favelizados presentes en otras ciudades de Latinoamérica. Dichos barrios tienen ciertas particularidades sociohistoricas que configuran condiciones de gran pobreza y hacinamiento con un limitado acceso a servicios públicos y de recreación. Al mismo tiempo, en dichos barrios hay presencia de organizaciones sociales de diversos origines y con diversos propósitos como educación, alimentación o recreación.
Me propongo entonces analizar la distribución geográfica de las organizaciones sociales en la Ciudad de Buenos Aires y su relación con la localización de los barrios populares en la ciudad. Así mismo me propongo mapear los parques como una forma de comenzar a ver el acceso a servicios ecológicos como zonas verdes de esparcimiento y de recreación.
Utilizaré las siguentes librerías
library(tidyverse)
library(sf)
library(ggmap)
library(leaflet)
library(osrm)
library(osmdata)
library("RColorBrewer")
Los datos georeferenciados de las organizationes sociales fueron descargados del portal de datos del Gobierno de la Ciudad de Buenos Aires. Los mismo se encuentran actualizados al 12 de Diciembre de 2019.
El resto de los datos serán descargados vía Open Street map (OSM) y del portal de datos a nivel nacional datos.gob.ar
Primero tenemos los datos sin mapeo y ya observamos una distribución no homogénea. Esto puede deberse a razones de muestreo o de necesidad social.
ggplot()+
geom_point(data=org.soc.filt, aes(x=long, y=lat, color=tipo_de_or), size=1,alpha=0.5, inherit.aes = FALSE, alpha=0.5) + scale_color_manual(values=c("blue", "darkorange", "red2"))+
labs(title="Organizaciones sociales",
subtitle="Ciudad de buenos aires",
caption="Fuente: https://data.buenosaires.gob.ar/dataset/?groups=desarrollo-humano",colour = "Tipo de organización")
## Warning: Duplicated aesthetics after name standardisation: alpha
En particular nos interesa ver donde se encuentran localizadas estas organizaciones dentro de la ciudad de buenos aires. Dada la distribución de los datos usarlos para extraer la caja de coordenadas no parece adecuado. Elijo entonces, descargar el mapa mediante Open Street Map (OSM).
bbox_ba <- getbb("Capital Federal, Buenos Aires, Argentina")
Generamos el mapa y el poligono de limites de la ciudad.
mapa_ba <- get_stamenmap(bbox_ba, zoom = 12)
polygon_ba <- getbb("Capital Federal, Buenos Aires, Argentina", format_out = "sf_polygon")
polygon_ba <- polygon_ba$multipolygon
ggmap(mapa_ba)+
geom_sf(data=polygon_ba, fill=NA, size=0.5, color="black", inherit.aes = FALSE)
Ahora agregamos las organizaciones sociales al mapa. Vemos, como dijimos anteriormente, que las organizaciones sociales no se encuentran distribuidas homogéneamente.
ggmap(mapa_ba) +
geom_point(data=org.soc.filt, aes(x=long, y=lat, color=tipo_de_or), size=1,alpha=0.5, inherit.aes = FALSE, alpha=0.5) + scale_color_manual(values=c("blue", "darkorange", "red2")) +
labs(title="Organizaciones sociales",
subtitle="Ciudad de buenos aires",
caption="Fuente: https://data.buenosaires.gob.ar/dataset/?groups=desarrollo-humano",
colour = "Tipo de organización")+
theme_void()+
geom_sf(data=polygon_ba, fill=NA, size=0.5, color="black", inherit.aes = FALSE)
## Warning: Duplicated aesthetics after name standardisation: alpha
## Coordinate system already present. Adding new coordinate system, which will replace the existing one.
Podemos ver que mientras que las organizaciones de Gestion Estatal se encuentran más dispersos y en zonas de avenidas, las organizaciones sociales se encuentran concentradas y en espacos con calles más pequeñas.
calles_ba <- opq(bbox_ba) %>% add_osm_feature(key = "highway")
#transformo en mapa
calles_ba <- osmdata_sf(calles_ba)
#extraemos las lineas
calles_ba <- calles_ba$osm_lines
#filtro adentro de la ciudad
calles_ba<- st_intersection(calles_ba, polygon_ba)
## Warning: attribute variables are assumed to be spatially constant throughout all
## geometries
#Voy a mapear solo avenidad
ggmap(mapa_ba)+
geom_sf(data = calles_ba %>% filter(., str_detect(name, "Avenida")), color="darkred", alpha=0.25, inherit.aes = FALSE)+
geom_point(data=org.soc.filt, aes(x=long, y=lat, color=tipo_de_or), size=1,alpha=0.5, inherit.aes = FALSE, alpha=0.5) + scale_color_manual(values=c("blue", "darkorange", "red2")) +
labs(title="Organizaciones sociales",
subtitle="Ciudad de buenos aires",
caption="Fuente: https://data.buenosaires.gob.ar/dataset/?groups=desarrollo-humano",
colour = "Tipo de organización")+
geom_sf(data=polygon_ba, fill=NA, size=0.5, color="black", inherit.aes = FALSE)+
theme_void()
## Coordinate system already present. Adding new coordinate system, which will replace the existing one.
## Warning: Duplicated aesthetics after name standardisation: alpha
Vemos a simple vista que los parques tampoco se encuentran distribuidos homogéneamente, con una mayor densidad en la zona norte.
parques_ba <- opq(bbox_ba) %>%
add_osm_feature(key = "leisure", value = "park")
#transformo en mapa
parques_ba <- osmdata_sf(parques_ba)
#extraemos los poligonos
parques_ba <- parques_ba$osm_polygons
#filtro adentro de la ciudad
#parques_ba <- st_intersection(parques_ba, polygon_ba)
#parques_ba <- parques_ba[!is.na(parques_ba$addr.city),]
#Voy a mapear solo avenidas y parques
ggmap(mapa_ba)+
geom_sf(data = parques_ba , fill="darkgreen", alpha=0.5, inherit.aes = FALSE,color=NA)+
geom_point(data=org.soc.filt, aes(x=long, y=lat, color=tipo_de_or), size=1,alpha=0.5, inherit.aes = FALSE, alpha=0.5) + scale_color_manual(values=c("blue", "darkorange", "red2")) +
labs(title="Organizaciones sociales",
subtitle="Ciudad de buenos aires",
caption="Fuente: https://data.buenosaires.gob.ar/dataset/?groups=desarrollo-humano",
colour = "Tipo de organización")+
geom_sf(data=polygon_ba, fill=NA, size=0.5, color="black", inherit.aes = FALSE)+
theme_void()
## Coordinate system already present. Adding new coordinate system, which will replace the existing one.
## Warning: Duplicated aesthetics after name standardisation: alpha
Por un tema de claridad decido usar otro mapa de fondo en vez del de OSM. Voy a agregar los barrios populares y filtrar solo los de la ciudad de buenos aires. Se ve claramente que las organizaciones sociales están ADENTRO de los barrios.
barrios_pop <- st_read("https://datosabiertos.desarrollosocial.gob.ar/dataset/0d022767-9390-486a-bff4-ba53b85d730e/resource/97cc7d10-ad4c-46cb-9ee4-becb402adf9f/download/renabap-2020-11-20.geojson")
## Reading layer `renabap-2020-11-20' from data source
## `https://datosabiertos.desarrollosocial.gob.ar/dataset/0d022767-9390-486a-bff4-ba53b85d730e/resource/97cc7d10-ad4c-46cb-9ee4-becb402adf9f/download/renabap-2020-11-20.geojson'
## using driver `GeoJSON'
## Simple feature collection with 4416 features and 10 fields
## Geometry type: MULTIPOLYGON
## Dimension: XY
## Bounding box: xmin: -71.56234 ymin: -54.82011 xmax: -53.64036 ymax: -22.04006
## Geodetic CRS: WGS 84
barrios_pop <- barrios_pop %>% filter(Provincia=="Ciudad de Buenos Aires")
#mapa de los barrios de la ciudad
barrios <- read_sf("https://cdn.buenosaires.gob.ar/datosabiertos/datasets/barrios/barrios.geojson")
#Filtrado de parques dentro de la ciudad
parques_ba_b<-st_intersection(parques_ba,barrios)
## Warning: attribute variables are assumed to be spatially constant throughout all
## geometries
#Mergeo las organizaciones sociales con los barrios populares
org.soc.filt_sf<-st_as_sf(org.soc.filt,coords = c("long","lat"),crs = 4326)
# find points within polygons
org_IN_barrio_pop <- st_join(org.soc.filt_sf,barrios_pop,join = st_within)
#Las organizaciones que esten dentro de un barrio popular tendrán etiqueta de "Barrio"
#cantida de NAs
org_IN_barrio_pop$Barrio%>%is.na()%>%table()
## .
## FALSE TRUE
## 232 369
#separación por barrio
org_IN_barrio_pop$Barrio%>%table()
## .
## Barrio Fátima Barrio Inta Cildáñez Los Piletones NHT del Trabajo
## 13 7 6 6 4
## Ramón Carillo Villa 1-11-14 Villa 15 Villa 20 Villa 21-24
## 17 18 17 32 67
## Villa 31 Villa 31 Bis Zavaleta
## 32 10 3
Ahora mapeamos las organizaciones sociales que estan fuera y dentro de los barrio y las separamos por tipo.
Barrios populares coloreados en rosa y parques en verde. Vemos que los barrios populares están mayoritariamente en la zona sur de la ciudad mientras que los parques están mayoritariamente en la zona norte.
ggplot()+geom_sf(data = barrios)+
geom_sf(data = parques_ba_b , fill="darkgreen", alpha=0.5, inherit.aes = FALSE,color=NA)+
geom_sf(data=barrios_pop, fill="violetred",alpha=0.7,color=NA)+labs(title="Organizaciones sociales y Barrios Populares",
subtitle="Barrios Populares dentro de la Ciudad de buenos aires en violeta \n Parques en verde",
caption="Fuentes: https://data.buenosaires.gob.ar/dataset/?groups=desarrollo-humano \n https://cdn.buenosaires.gob.ar/datosabiertos/datasets/barrios/barrios.geojson")
Cuando sumamos las organizaciones sociales nuevamente vemos que las distribución separada por tipo de gestion (estatal, no estatal o mixta) tampoco es homogénea. A primera vista parece que las organizaciones sociales de gestion estatal estan por fuera de los barrios populares mienras que las organizaciones sociales de gestion no estatal estan dentro de los barrios.
ggplot()+geom_sf(data = barrios)+
geom_sf(data=barrios_pop, fill="violetred",alpha=0.7,color=NA)+
geom_sf(data = parques_ba_b , fill="darkgreen", alpha=0.5, inherit.aes = FALSE,color=NA)+
geom_sf(data=org_IN_barrio_pop[,], size=0.5,alpha=0.5, inherit.aes = FALSE, alpha=0.5, aes(color=tipo_de_or)) + scale_color_manual(values=c("blue", "darkorange", "red2"))+
labs(title="Organizaciones sociales",
subtitle="Ciudad de buenos aires",
caption="Fuentes: https://data.buenosaires.gob.ar/dataset/?groups=desarrollo-humano \n https://cdn.buenosaires.gob.ar/datosabiertos/datasets/barrios/barrios.geojson")
## Warning: Duplicated aesthetics after name standardisation: alpha
Para corroborar esto grafiacmos solamente las organizaciones sociales dentro de los barrios y calculamos el total por tipo de gestión.
ggplot()+geom_sf(data = barrios)+
geom_sf(data=barrios_pop, fill="violetred",alpha=0.7,color=NA)+
geom_sf(data = parques_ba_b , fill="darkgreen", alpha=0.5, inherit.aes = FALSE,color=NA)+
geom_sf(data=org_IN_barrio_pop[!is.na(org_IN_barrio_pop$Barrio),], size=0.5,alpha=0.5, inherit.aes = FALSE, alpha=0.5, aes(color=tipo_de_or)) + scale_color_manual(values=c("blue", "darkorange", "red2"))+
labs(title="Organizaciones sociales Dentro de Barrios Populares ",
subtitle="Ciudad de buenos aires",
caption="Fuentes: https://data.buenosaires.gob.ar/dataset/?groups=desarrollo-humano \n https://cdn.buenosaires.gob.ar/datosabiertos/datasets/barrios/barrios.geojson")
## Warning: Duplicated aesthetics after name standardisation: alpha
Para ver la distribución vemos total por tipo de gestión
org_IN_barrio_pop[!is.na(org_IN_barrio_pop$Barrio),] %>% group_by(Barrio,tipo_de_or)%>%summarise(total_org=n()) %>% ggplot(.,aes(y= total_org ,fill=tipo_de_or,x=Barrio))+geom_bar(stat="identity",position=position_dodge())+
theme_minimal()+ scale_fill_manual(values=c("blue", "darkorange", "red2"))+ theme(axis.text.x = element_text(angle = 45, hjust=1))+
labs(title="Organizaciones sociales Dentro de Barrios Populares",
subtitle="Color por tipo de gestión",
caption="Fuentes: https://data.buenosaires.gob.ar/dataset/?groups=desarrollo-humano \n https://cdn.buenosaires.gob.ar/datosabiertos/datasets/barrios/barrios.geojson")
org_IN_barrio_pop[!is.na(org_IN_barrio_pop$Barrio),] %>% group_by(Barrio,tipo_de_or)%>%summarise(total_org=n()) %>% ggplot(.,aes(y= total_org ,fill=tipo_de_or,x=Barrio))+
geom_bar(position="fill", stat="identity")+
theme_minimal()+ scale_fill_manual(values=c("blue", "darkorange", "red2"))+ theme(axis.text.x = element_text(angle = 45, hjust=1))+
labs(title="Organizaciones sociales Dentro de Barrios Populares",
subtitle="Color por tipo de gestión",
caption="Fuentes: https://data.buenosaires.gob.ar/dataset/?groups=desarrollo-humano \n https://cdn.buenosaires.gob.ar/datosabiertos/datasets/barrios/barrios.geojson")
En este análisis vimos que la distribución de los espacios verdes en la Ciudad de Buenos Aires se encuentra distribuida heterogéneamente en el espacio. Vemos una mayor presencia de parques de mayor tamaño en la zona norte de la ciudad. Así mismo vemos que la distribución de los barrios populares ed la ciuduad tampoco es homogénea, con una mayor presencia en la zona sur de la ciudad. Esto nos lleva a repensar las condiciones de acceso a servicios ecológicos y de esparcimiento de las poblaciones que habitan estos barrios.
Así mismo en este trabajo nos propusimos estudiar la distribución espacial de las organizaciones sociales en la Ciudad de Buenos Aires. Encontramos una correlación de la presencia de estas organizaciones con la presencia de barrios populares. Por diversas razones esto parece una conclusión un tanto obvia. Es interesante sin embargo ver la densidad de organizaciones sociales no gubernamentales dentro de los barrios populares en comparación con la presencia de organizaciones gubernamentales. Vemos que dentro de los barrios las organizaciones de gestión no estatal es mucho mayor que la estatal llegando a un 100% en barrio Los Piletones y Villa 31 bis.